home *** CD-ROM | disk | FTP | other *** search
/ DigitalVision: Spaced Out / DigitalVision: Spaced Out - Disc 1.iso / pc / data / images.dxr / Internal_24_image search entry box i.ls < prev    next >
Encoding:
Text File  |  2001-10-22  |  2.9 KB  |  94 lines

  1. property pCDList, pPageType, spriteNum, pType, pchar, pMember, pGhostMember, pImageResultList
  2. global gImage_code, gCd_code, gcdcodes, gkeywords
  3.  
  4. on beginSprite me
  5.   pCDList = utilsGetCDList()
  6.   pPageType = #imageSearch
  7.   pMember = sprite(me.spriteNum).member
  8.   pGhostMember = member("imagesearchghost entry")
  9.   pImageResultList = []
  10.   member("search results field").text = EMPTY
  11. end
  12.  
  13. on initImageSearch me, savedData
  14.   if savedData.imageResultList <> VOID then
  15.     pImageResultList = savedData.imageResultList
  16.     cdCode = savedData.cdCode
  17.     CDname = savedData.CDname
  18.     localJumpToThumbnails(pPageType, pImageResultList)
  19.   end if
  20. end
  21.  
  22. on keyDown me
  23.   if the key = RETURN then
  24.     me.domainSearch()
  25.   else
  26.     pass()
  27.   end if
  28. end
  29.  
  30. on keyUp me
  31.   imageCode = sprite(spriteNum).member.text
  32.   if pMember.text.char.count >= pchar then
  33.     i = newSearchImageCode(imageCode)
  34.     pGhostMember.text = string(i)
  35.   else
  36.     pGhostMember.text = EMPTY
  37.   end if
  38.   pass()
  39. end
  40.  
  41. on newSearchImageCode imagecodeToFind
  42.   numOfChars = length(imagecodeToFind)
  43.   repeat with imageCode in pImageResultList
  44.     if chars(imageCode, 1, numOfChars) = imagecodeToFind then
  45.       return imageCode
  46.     end if
  47.   end repeat
  48. end
  49.  
  50. on domainSearch me
  51.   if pGhostMember.text <> EMPTY then
  52.     imageCode = pGhostMember.text
  53.     sprite(spriteNum).member.text = pGhostMember.text
  54.     me.newSearchForImageCode(pMember.text)
  55.   else
  56.     member("search results field").text = "No images matched your search criteria."
  57.     member("error message").text = "No images matched your search criteria"
  58.   end if
  59. end
  60.  
  61. on newSearchForImageCode me, imageCode
  62.   utilsSaveState(pPageType, #imageCode, member("imagesearch entry").text)
  63.   utilsSaveState(pPageType, #ghostimagecode, member("imagesearchghost entry").text)
  64.   utilsSaveState(pPageType, #imageResultList, pImageResultList)
  65.   localJumpToThumbnails(pPageType, pImageResultList)
  66. end
  67.  
  68. on searchForImageCode me, imageCode
  69.   resultList = dbSearch("image_code", imageCode)
  70.   if resultList <> EMPTY then
  71.     imageResultList = utilsConvertToImageList(resultList)
  72.     oldDelimiter = the itemDelimiter
  73.     the itemDelimiter = "|"
  74.     cdCode = item 2 of line 1 of resultList
  75.     CDname = getProp(pCDList, symbol(cdCode))
  76.     castLib("CDImages").fileName = swapChar(the pathname & "casts/" & CDname & getCastExt(), "/", getPathDelim())
  77.     the itemDelimiter = oldDelimiter
  78.     utilsSaveState(pPageType, #cdCode, cdCode)
  79.     utilsSaveState(pPageType, #CDname, CDname)
  80.     utilsSaveState(pPageType, #imageCode, member("imagesearch entry").text)
  81.     utilsSaveState(pPageType, #ghostimagecode, member("imagesearchghost entry").text)
  82.     utilsSaveState(pPageType, #imageResultList, imageResultList)
  83.     localJumpToThumbnails(pPageType, imageResultList)
  84.   else
  85.     member("error message").text = "No images matched your search criteria"
  86.   end if
  87. end
  88.  
  89. on getPropertyDescriptionList
  90.   p_list = [:]
  91.   addProp(p_list, #pchar, [#format: #integer, #default: 0, #comment: "number of chars to search on: "])
  92.   return p_list
  93. end
  94.